import type { BaseResponse } from './baseResponse';

// 建议分页请求数据模型
export interface SuggestionRequest {
  id?: number;
  title?: string; // 建议标题
  categoryId?: number; // 建议分类ID
  status?: number; // 建议状态
  beginTime?: string; // 开始时间（YYYY-MM-DD HH:mm:ss格式）
  endTime?: string; // 结束时间（YYYY-MM-DD HH:mm:ss格式）
  pageNum: number; // 当前页码
  pageSize: number; // 每页条数
}

// 建议状态请求数据模型
export interface SuggestionStatusRequest {
  id: number; // 建议ID
  replyContent?: string; // 回复内容
}

// 建议响应数据模型
export interface SuggestionResponse {
  id: number; // 建议ID
  title: string; // 建议标题
  categoryId: number; // 建议分类名称
  simpleDesc: string; // 建议简单描述
  detailDesc: string; // 建议详细描述
  imgUrls: string[]; // 建议图片
  replyContent: string; // 回复内容
  status: number; // 建议状态
  createTime: string; // 创建时间
  updateTime: string; // 更新时间
  replyTime: string; // 回复时间
  readNum: number; // 阅读量
  user: {
    username: string; // 用户名
    avatar: string; // 头像
  };
}

// 建议列表数据结构
export interface SuggestionList {
  total: number; // 总数
  records: SuggestionResponse[]; // 建议数组
}

// 用通用响应体类型包裹
export type SuggestionListResult = BaseResponse<{ data: SuggestionList }>;

export type SuggestionDetailResult = BaseResponse<{ data: SuggestionResponse }>;
